home *** CD-ROM | disk | FTP | other *** search
/ Whiteline: Alpha / Whiteline Alpha.iso / progtool / c / laserlib / inc / getarg.inc < prev    next >
Encoding:
Text File  |  1994-09-22  |  1.9 KB  |  46 lines

  1. /**************************************************************************/
  2. /*                                                                        */
  3. /*  NAME:         getarg.inc                                              */
  4. /*                                                                        */
  5. /*  DATUM:        11.06.89                                                */
  6. /*                                                                        */
  7. /*  BESCHREIBUNG: Include-File fuer getarg.c.                             */
  8. /*                                                                        */
  9. /**************************************************************************/
  10.  
  11. #ifndef GETARGINC
  12. #define GETARGINC
  13. #include <portab.h>
  14.  
  15. #define IARG      1     /* Integer (WORD)      */
  16. #define BARG      2     /* Boolescher (BOOL)   */
  17. #define CARG      3     /* Character (BYTE)    */
  18. #define SARG      4     /* String (BYTE *)     */
  19. #define PARG      5     /* Funktion (*WORD) () */
  20. #define NARG      6     /* Filename (BYTE *)   */
  21. #define LARG      7     /* Long Integer (LONG) */
  22. #define DARG      8     /* Double (DOUBLE)     */
  23.  
  24. typedef struct
  25.    BYTE  arg_arg;      /* Options-Argument-Zeichen  */
  26.    BYTE  arg_type;     /* Typ des Options-Arguments */
  27.    WORD *arg_varaddr;  /* Adresse der Variablen     */
  28.    BYTE *arg_errmsg;   /* Fehlermeldungstext        */
  29. ARG;
  30.  
  31. #define TABSIZE(t) (sizeof (t) / sizeof (ARG))
  32.  
  33. #define GAEXIT   0x1   /* Flag fuer Programmabbruch, wenn falsche Option */
  34. #define GABREAK  0x2   /* Flag fuer Prozedurabbruch, wenn falsche Option */
  35. #define GAUSAGE  0x4   /* Flag fuer Anzeige des usage, wenn falsche Option */
  36. #define GANOCASE 0x8   /* Flag fuer Vernachlaessigung von Gross/Kleinschrift */
  37.  
  38. extern BOOL getarg();
  39.  
  40. #define GetArg(c,v,t)  (getarg (c, v, t, TABSIZE(t), (GAEXIT|GAUSAGE), "", -1))
  41.  
  42. #endif GETARGINC
  43.  
  44.